		Ext.util.Format.comboRenderer = function(combo){
  	    return function(value){
  	        var record = combo.findRecord(combo.valueField, value);
  	        return record ? record.get(combo.displayField) : combo.valueNotFoundText;
  	    };
  	};
	
	Ext.override(Ext.form.ComboBox, {
		setValue : function(v, fireSelect){
			var text = v;
			if(this.valueField){
				var r = this.findRecord(this.valueField, v);
				if(r){
					text = r.data[this.displayField];
					if (fireSelect) {
						this.fireEvent('select', this, r, this.store.indexOf(r));
					}
				}else if(Ext.isDefined(this.valueNotFoundText)){
					text = this.valueNotFoundText;
				}
			}
			this.lastSelectionText = text;
			if(this.hiddenField){
				this.hiddenField.value = v;
			}
			Ext.form.ComboBox.superclass.setValue.call(this, text);
			this.value = v;
			return this;
		}
	});